﻿use master
go
--if exists (select * from sysdatabases where name='PlayMessage')
--drop database PlayMessage
--go
--create database PlayMessage
go
use PlayMessage
go
if exists(select * from sysobjects where name='pm_users')
drop table pm_users
go
create table pm_users   --用户表
(
   Id int identity(1,1) primary key not null,
   UserName varchar(50) unique not null,  --用户名唯一
   TrueName nvarchar(20) null,           --真实姓名  -- 
   UserIntegral  decimal(18,0) null,   ----用户积分
   UserPassword varchar(50)not null,     ---用户密码
   UserEmail varchar(50)null,  --用户邮箱
   UserEmailState bit not null,  --0代表未验证邮箱 1代表已验证
   UserMobile varchar(20) null,	--用户手机
   UserMobileState bit  not null,  ----0代表未验证手机 1代表已验证
   UserQQ varchar(20) null,  --用户ＱＱ
   UserMSN varchar(100) null, --用户ＭＳＮ 
   UserColourMoney decimal(18,0) null,  --用户彩币
   UserMoney decimal(18,2) null,  --用户金额
   UserLoginTime datetime null,  ---用户上一次登录时间
   UserRegisterTime datetime not null, ---用户注册时间
   UserUpdateTime datetime null,  ---用户修改时间
   UserImgUrl varchar(100) null,  ---用户图片链接
   UserState tinyint default(1) not null,  --用户状态　　1代表用户可以登录 2代表禁用该用户
   UserLoginState bit not null,  --用户登录状态 1代表未登录 2代表已登录
   UserRemark nvarchar(500) null,   ---用户备注
   CreateTime datetime  not null, --创建时间
  CreateUser int not null, --创建人
  LastModifyTime datetime null, --最后一次修改时间
  LastModifyUser int null, --最后一次修改人
)



go
----------------彩种类型表------------------------
if exists(select * from sysobjects where name='pm_T_LotteryType')
drop table pm_T_LotteryType
go
create table pm_T_LotteryType   ---后台彩种列表
(
  Id int identity(1,1) primary key not null,
  LotteryID int unique not null,  ---彩种ID 唯一
  LotteryName nvarchar(100) null,  ---彩种名称
  Descrition nvarchar(200) null--彩种描述
) 
go
insert into pm_T_LotteryType values(6,'３Ｄ','福彩３Ｄ')
insert into pm_T_LotteryType values(5,'双色球','福彩双色球')
insert into pm_T_LotteryType values(13,'七乐彩','体彩七乐彩')
insert into pm_T_LotteryType values(39,'大乐透','超级大乐透')
insert into pm_T_LotteryType values(63,'排列三','排列三')
insert into pm_T_LotteryType values(64,'排列五','排列五')
insert into pm_T_LotteryType values(2,'七星彩','七星彩')
insert into pm_T_LotteryType values(3,'２２选５','体彩２２选５')
-------------------------------彩种表------------------------

if exists(select * from sysobjects where name='pm_plays')
drop table pm_plays 
go
create table pm_plays
(
  Id INT identity(1,1)  primary key not null,
  CreateTime datetime null,
  LotteryID  int null,--彩种ID
  PlayNo varchar(20) null,  ---彩种期号
  PlayName  nvarchar(100) null,  --彩种名称
  StartTime datetime null, --开始时间
  EndTime datetime null, --结束时间
  WinLotteryNumber varchar(100) null,  --开奖号码
  StateUpdatetime datetime null, ---录入开奖号码的更新时间
  PlayState  int null ---状态

)
-------------------------------------------------------------
if exists(select * from sysobjects where name='pm_expertNews')
drop table pm_expertNews  ---专家方案新闻表
go
create table pm_expertNews
(
  Id int identity(1,1) primary key not null,
  CreateTime datetime null,
  UserId  int not null,  --用户专家ＩＤ
  PlayId int not null,  ---彩种ＩＤ
  PlayQiNo varchar(20),  --彩种期号
  Extitle  nvarchar(500) null,  --方案标题
  Keyword nvarchar(200) null,  ---方案关键词
  Exmiaoshu nvarchar(2000) null,  ---方案描叙
  Uptime datetime null,  --彩种方案发表时间
  Endtime datetime null, ---彩种方案结束时间　
  Scheme nvarchar(max) null, ----专家方案
  ColourMoney decimal(18,0) null,  --专家设置访问彩币数量
  ClickSum  decimal(18,0) null,  ---浏览数量
  CheckMsg varchar(2) null, ---审核信息
  ExperRemark nvarchar(500) null --备注
)
go
if exists(select * from sysobjects where name='pm_newTypes')
drop table pm_newTypes	---彩种新闻类型表
go
create table pm_newTypes
(
  Id int identity(1,1) primary key not null,
  Title nvarchar(200) null, --新闻类型标题
  NewTime datetime null,  --新闻类型添加时间
  NewState tinyint default(0) not null, --新闻状态1禁用　0启用
  NewRemark nvarchar(500) null ---新闻类型备注
)
go
insert into pm_newTypes (Title,NewTime,NewRemark)values('福彩双色球新闻咨询',GETDATE(),'福彩双色球')

if exists(select * from sysobjects where name='pm_newsShows')
drop table pm_newsShows
go
create table pm_newsShows ---新闻表
(
  Id int identity(1,1) primary key not null,
  TypeId int not null,  ---新闻类型表ID
  Keyword nvarchar(200) null,  --设置关键词
  NewsTitle nvarchar(500) null,  --新闻标题
  NewsContent nvarchar(max) null,  --新闻内容
  NewsInTime datetime null,  ---新闻时间
  NewsClick int null,  ---新闻关注数量
  NewsTag  nvarchar(50) null,  --新闻标签
  NewsState bit null,  ----1代表显示 0代表不显示
  NewsRemark nvarchar(1000) null, --备注
  CreateTime datetime not null, --创建时间
  CreateUser int not null, --创建人
  LastModifyTime datetime null, --最后一次修改时间
  LastModifyUser int null, --最后一次修改人
)

/* 支撑系统框架 相关表..*/

if exists(select * from sysobjects where name='Sys_SystemSettings')
drop table sys_SystemSettings
go
create table Sys_SystemSettings ---系统参数表
(
  Name varchar(200) primary key not null,  --名称
  Value xml not null,  --值
  [Description] nvarchar(255) null,  --描述
)



/*	角色定义表
定义角色*/
/*定义的菜单项，该表数据在系统初始化时生成，不提供界面进行维护。*/
if exists(select * from sysobjects where name='UARoleInfo')
drop table UARoleInfo
go
create Table UARoleInfo
(
	RoleID			int identity primary key,	/* 角色编号					*/
	RoleName		nvarchar(64) not null,		/* 角色名称					*/
	RoleCode		nvarchar(64) null,			/*角色Code,初始化特殊数据 特殊作用*/
	RoleType		nvarchar(36) not null,		/* 角色类别：BACKBBS				*/
	IsSystemRole	bit  default 0 NOT NULL,	/* 是否系统角色。0=不是，1=是*/
	Comments		nvarchar(256) null,			/* 角色描述					*/
	CreateUser		Int not null,				/* 创建用户					*/
	CreateTime		DateTime not null,			/* 创建时间					*/
	LastModifyUser		Int null,					/* 修改用户					*/
	LastModifyTime		DateTime null				/* 修改时间					*/
)
 

/*用户-角色对应表*/
if exists(select * from sysobjects where name='UAUserOfRole')
drop table [UAUserOfRole]
go
CREATE TABLE [UAUserOfRole](
	[UserID] [int] NOT NULL,
	[RoleID] [int] NOT NULL,
	[Status] [tinyint] NOT NULL,
	[CreateUser] [int] NOT NULL,
	[CreateTime] [datetime] NOT NULL,
	[LastModifyUser] [int] NULL,
	[LastModifyTime] DateTime NULL
	primary key(UserID,RoleID)
	)
GO
/*定义的菜单项，该表数据在系统初始化时生成，不提供界面进行维护。*/

if exists(select * from sysobjects where name='UAMenuInfo')
drop table UAMenuInfo
go
create Table UAMenuInfo
(
		MenuType		Nvarchar(12) not null,	/* 菜单类型：BBS				*/
		MenuID			Nvarchar(24) primary key  not null,	/* 菜单编码			*/
		MenuLevel		Int not null,			/* 菜单级别：0,1，2				*/
		ParentMenuID	Nvarchar(24) not null,	/* 上级菜单编码	0表示为根节点	*/
		PathCode		NVarchar(64) not null,	/* 路径：即菜单层次路径			*/
		MenuName		NVarchar(64) not null,	/* 菜单名称						*/
		OrderID			int not null,			/* 排序序号						*/
		ImageURL		NVarchar(256) null,		/* 菜单图片URL					*/
		LinkURL			NVarchar(256) null,		/* 菜单对应的链接				*/
		OpenTarget		NVarchar(16)null,		/*打开目标*/
		IsVisible		bit not null,			/*是否不显示此菜单				 */
		Comments		NVarchar(256) null,		/* 备注							*/
		CreateTime		DateTime not null		/* 创建时间						*/
)

/*	权限定义表
定义系统的最小操作单位（权限），权限数据由系统初始化是生成，不需要通过系统管理工具进行维护。
*/
if exists(select * from sysobjects where name='UARightInfo')
drop table UARightInfo
go
Create Table UARightInfo
(
		RightID			Int primary key,		/* 序号，用于识别树结构			*/
		ModuleType		Nvarchar(12) not null,	/* 类别：BACKBBS			*/
		RightCode		NVarchar(64) unique not null,	/* 权限编码						*/
		Grade			Int not null,			/* 级别：1,2,3					*/
		NodeType		Int not null,			/* 节点类型：0=模块，1=权限		*/
		ParentCode		Int not null,			/* 上级节点编码，0表示为根节点	*/
		PathCode		NVarchar(64) not null,	/* 路径：即RightID层次路径		*/
		RightName		NVarchar(64) not null,	/* 权限名称						*/
		OrderID			int not null,			/*  添加排序字段（OrderID）*/
		LogFlag			Int not null,			/* 是否记录日志：0=不记，1=记日志	*/
		CreateUser		Int not null,			/* 创建用户						*/
		CreateTime		DateTime not null		/* 创建时间						*/
)

/*
权限-菜单对应表.
定义权限与菜单的对应关系，每个2级菜单都和1个权限关联，用户登录后，
根据用户ID 获取用户的角色,再获取角色的权限,再根据权限获取用户的菜单..
最后动态生成菜单。)*/
if exists(select * from sysobjects where name='UARightOfMenus')
drop table UARightOfMenus
go
Create Table UARightOfMenus
(
	RightCode		Nvarchar(64) not null,		/* 权限编码					*/
	MenuID			Nvarchar(24) not null,		/* 菜单编码					*/
	CreateUser		Int not null,				/* 创建用户					*/
	CreateTime		DateTime not null,			/* 创建时间					*/
	Primary key (RightCode, MenuID)
)


/*角色-权限对应表
定义角色与权限的对应关系，一个角色对应多个权限，一个权限也可属于多个角色。*/
if exists(select * from sysobjects where name='UARoleOfRight')
drop table UARoleOfRight
go
create Table UARoleOfRight
(
	RoleID			Int not null,				/* 角色ID					*/
	RightCode		NVarchar(64) not null,		/* 权限编码					*/
	CreateUser		Int not null,				/* 创建用户					*/
	CreateTime		DateTime not null,			/* 创建时间					*/
	LastModifyUser		Int null,					/* 修改用户					*/
	LastModifyTime		DateTime null,				/* 修改时间					*/
	Primary key (RoleID, RightCode)
)

---------------记录用户查看专家专题的信息表-------------------
if exists(select * from sysobjects where name='UserLookExpertNewsMsg')
drop table UserLookExpertNewsMsg
go
create table UserLookExpertNewsMsg
(
  mid int identity(1,1) not null,
  buyExpertNewsTime datetime not null,--查看时间
  userid int not null,--用户ID
  expertid int not null,---专家专题ID
  lookMoney decimal(18,0) not null--需查看的彩币
)
 
SELECT * FROM UARoleInfo
SELECT * FROM UAUserOfRole
SELECT * FROM UARoleOfRight

SELECT * FROM UAMenuInfo
SELECT * FROM UARightInfo
SELECT * FROM UARightOfMenus




go